package com.xiaoshuidi.cloud.module.contract.controller.admin.contract.vo.settlement;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

/**
* 结算单明细 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class ContractSettlementCompanyListReqVO {
    /**
     * 合同id
     */
    private List<String> roomNames;
    /**
     * 合同id
     */
    private Long contractId;
    /**
     * 账单表id
     */
    private Long orderId;
    /**
     * 结算单类型 default普通结算单 | owner_settlement业主结算单 | company_settlement 企业合同结算单
     */
    private String settlementType;
    /**
     * 公寓id
     */
    private Long apartmentId;
    /**
     * 公寓名称
     */
    private String apartmentName;
    /**
     * 房间id
     */
    private Long roomId;
    /**
     * 房间名称
     */
    private String roomName;
    /**
     * 租客姓名
     * */
    private String customerName;

    /**
     * 租客手机号
     * */
    private String customerPhone;

    /**
     * 退租单状态  (清算)  状态 0 待审批 | 1 审批通过 | 2 已驳回  | 3 待清算 | 4 已清算
     * */
    private String clearedStatus;
    /**
     * 退租类型
     * */
    private String evictionType;

    /**
     * 退租时间
     * */
    private LocalDate evictionTime;

    /**
     * 退租原因
     * */
    private String evictionReason;

    /**
     * 资金流向 out 流出| in 流入
     * */
    private String flowType;

    /**
     * 应收款费用
     * */
    private BigDecimal receivablesAmount;

    /**
     * 应退款费用
     * */
    private BigDecimal refundableAmount;

    /**
     * 金额
     * */
    private BigDecimal amount;

    /**
     * 持卡人
     * */
    private String cardholder;

    /**
     * 支行省
     */
    private String   bankProvince;
    /**
     * 支行市
     */
    private String bankCity;
    /**
     * 支行code
     * */
    private String bankCode;
    /**
     * 支行名称
     * */
    private String  bankName;

    /**
     * 银行卡号
     * */
    private String customerCreditCard;

    /**
     * 所属银行
     * */
    private String customerBank;

    /**
     * 所属支行
     * */
    private String customerBankArea;

    /**
     * 附件信息
     * */
    private String certificateUrl;

    /**
     * 备注
     * */
    private String remark;

    /**
     * 收款开始时间
     * */
    private LocalDate startReceivables;

    /**
     * 收款结束时间
     * */
    private LocalDate endReceivables;
    /**
     * 退租房间资产
     * */
    private String roomAsset;
}
